package com.gollum.common.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * rquest读取多个requestBody参数 注解标识
 *
 * @author Herther
 * @createTime 2022年09月09日 22:39:00
 * @since 1.0.0
 */
@Target(ElementType.PARAMETER)
@Retention(RetentionPolicy.RUNTIME)
public @interface MultiRequestBody {

    /** 是否必要的参数 **/
    boolean required() default true;

    /** 当value的值或者参数名不匹配时，是否允许解析最外层属性到该对象 **/
    boolean paraseAllFields() default true;

    /** 解析时用到的JSON的key **/
    String key() default "";

}
